package com.soil.code.generation.domain.mybatis.pojo;

import com.soil.code.generation.domain.pojo.CodeGenerationInfoBase;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @author zeno
 */
@Data
public class MybatisCodeGenerationInfo extends CodeGenerationInfoBase{

  /** 表信息 */
  private TableInfo tableInfo;

  /** 列信息 */
  private List<ColumnInfo> columnInfos;


  @Data
  @NoArgsConstructor
  @AllArgsConstructor
  public static class TableInfo{

    /** 表名 */
    private String name;

    /** 表注释 */
    private String comment;

  }

  @Data
  public static class ColumnInfo{

    /** 字段名 */
    private String name;

    /** 字段类型 */
    private String javaType;

    /** 是否主键 */
    private Boolean isPrimaryKey;

    /** 是否自增字段 */
    private Boolean isAutoIncrement;

    /** 字段注释 */
    private String comment;
  }
}
